home *** CD-ROM | disk | FTP | other *** search
-
-
-
-
-
-
-
- HPFilter
- Rip Toren
- POB 674
- Columbia MD 21045
- 12 Jan 1987
-
- So... you just got the fancy HP LaserJet+ printer that will allow you
- to publish your own version of whatever. You have just spent about 3
- hours reading the operator's manual, as well as the technical
- reference. And you still aren't sure what this hummer will do.
-
-
- In short:
- 1) It will not print out the extended IBM PC character set. You get a
- bunch of European characters that just don't convey the same
- impact.
- 2) You can't seem to get anything that resembles BOLD printing.
- 3) And that compressed printing will only work in portrait (up and
- down) and not in landscape (side to side) where it would be really
- useful.
-
- HPFilter can solve only the first two of those problems for you.
- The concept is that HPFilter installs itself in the interrupt 17 chain,
- so that it has a chance to look at each character as it is sent to the
- printer.
-
- If a code between 179 and 223 (these are the line drawing and block
- characters) is seen, a substitute string is sent in its place. This
- string is a graphic definition to the printer to create the desired
- character as a set of individual line segments.
-
- In the case of BOLDing, the character is printed a second time, with
- the registration offset by 1/300th of an inch in both the vertical and
- horizontal directions. This may be considered FATtening, rather than
- bolding, but it's better than nothing.
-
- <<INSTALLATION>>
-
- Simply execute HPFilter from the command line. It will take up a bit
- less than 4k bytes. If you want to disable HPFilter, simply run the
- program again. Each invocation flips HPFilter on and off.
-
- To activate the BOLDing, you will have to insert a code into your file
- to turn it on and then off. To turn BOLDing on, send the codes
- <ESC>+'G'. That is in hexadecimal <1B 47> or <27 71> in decimal. To
- turn the BOLDING off, use <ESC>+'H' or <ESC>+'E'. The later code is a
- reset to the LaserJet.
-
- If by chance you leave HPFilter active, while printing to a printer
- other than the HP LaserJet, expect a bunch of gibberish for those
- graphic characters.
-
-
-
-
-
-
-
- <<SOURCE>>
- The source has been included so that you may add any additional
- characters that you might want. In the definitions for the substitution
- strings, you will see a number of periods (.). These are ingnored, and
- not passed to the printer. They just make things easier to line up and
- see what is going on in the commands. You may obviously delete them to
- compact the size a bit. To rebuild the application,
-
- >masm hpfilter,hpfilter;
- >link hpfilter,hpfilter;
- (you will get a STACK error - ignore)
- >exe2bin hpfilter hpfilter.com
-
- The lines that are drawn are 3/300th of an inch. The are laid out on a
- grid of 30x50 pels. This is consistant with the examples in the HP
- Tecnical Reference manual.
-
- <<DISCLAIMER>>
- This is the first assembly program that I have ever written in the
- INTEL 80x8x family. It is oversized, and can be tightened up with
- subroutine calls. But figuring out where the assembler and linker would
- place things was too confusing. The basic structure was inspired by an
- article and program by Jeff Garbers in the September 1984 issue of PC
- Tech Journal. He said his program was a good basis for further work,
- and he was correct. Thanx.
-
- If you have any comments, or useful HP LaserJet utilities, I would love
- to hear from you at the above address, or leave a message on Vince
- Castelli's CHESAPEAKE BBS (301) 267 4930 addressed to RIP TOREN.
-
-
-